1 #ifndef ALIITSCALIBRATIONPIXUPG_H
2 #define ALIITSCALIBRATIONPIXUPG_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
6 /* $Id: AliITSCalibrationPixUpg.h 53595 2011-12-14 16:13:16Z masera $ */
8 #include "AliITSCalibration.h"
11 ////////////////////////////////////////////////////
13 // ITS response class for pixels //
14 ////////////////////////////////////////////////////
16 class AliITSCalibrationPixUpg : public AliITSCalibration {
18 AliITSCalibrationPixUpg(); // default constructor
19 AliITSCalibrationPixUpg(Short_t nChips,Short_t nColPerChip,Short_t nRow); // default constructor
20 AliITSCalibrationPixUpg(const AliITSCalibrationPixUpg &src);
22 virtual ~AliITSCalibrationPixUpg() {;} // destructror
24 virtual void ClearBad();
26 virtual Int_t GetNrBad() const;
27 virtual Int_t GetNrBadInChip(Int_t chip) const;
28 virtual Int_t GetNrBadInColumn(Int_t col) const;
30 virtual Int_t GetBadColAt(Int_t index) const;
31 virtual Int_t GetBadRowAt(Int_t index) const;
32 virtual void GetBadPixel(Int_t index, Int_t &row, Int_t &col) const;
34 virtual Int_t GetNrBadSingle() const {return fNrBad;}
35 virtual void SetNrBadSingle(Int_t nr) {fNrBad=nr;} // used to be called SetNrBad, but misleading
36 virtual void SetBadList(TArrayS badlist) {fBadChannels=badlist;}
37 virtual void SetNrBad(Int_t /*nr*/); // Use SetNrBadSingle!!!
39 virtual Bool_t IsBad() const;
40 virtual Bool_t IsChipBad(Int_t chip) const;
41 virtual Bool_t IsColumnBad(Int_t col) const;
42 virtual Bool_t IsPixelBad(Int_t col, Int_t row) const;
44 virtual void SetChipBad(Int_t chip);
45 virtual void UnSetChipBad(Int_t chip);
46 Bool_t IsChipMarkedBad(Int_t c) const {return (fBadChips&(0x1<<c))!=0;}
48 virtual void AddBad(Int_t col, Int_t row);
50 virtual Int_t GetChipIndexFromCol(Int_t col) const;
51 // virtual Int_t GetChipFromChipIndex(Int_t index) const;
53 virtual void GiveCompressParam(Int_t *) const {NotImplemented("GiveCompressParam");}
54 virtual void SetDetParam(Double_t *) {NotImplemented("SetDetParam");}
55 virtual void GetDetParam(Double_t *) const {NotImplemented("GetDetParam");}
56 virtual void SetNDetParam(Int_t /*n*/) {NotImplemented("SetNDetParam");}
57 virtual Int_t NDetParam() const {NotImplemented("NDetParam"); return 0;}
58 virtual void SetSigmaSpread(Double_t, Double_t) {NotImplemented("SetSigmaSpread");}
59 virtual void SigmaSpread(Double_t & /* p1 */,Double_t & /* p2 */) const {NotImplemented("SigmaSpread");}
61 void SetColRowData(Short_t nchip, Short_t ncolperchip, Short_t nrow);
62 Int_t GetNCol() const {return fNCol;}
63 Int_t GetNRow() const {return fNRow;}
64 Int_t GetNColPerChip() const {return fNColPerChip;}
65 Int_t GetNChips() const {return fNChips;}
68 Short_t fNChips; // n of chips
69 Short_t fNColPerChip; // n of columns per chip
70 Short_t fNCol; // number of columns
71 Short_t fNRow; // number of rows
72 Int_t fNrBad; // Nr of SINGLE bad pixels
73 UInt_t fBadChips; // bit pattern of completely dead chips?
74 TArrayS fBadChannels; // Array with bad channels info (col0,row0,col1...rowN) N = fNrBad
76 AliITSCalibrationPixUpg& operator=(const AliITSCalibrationPixUpg& source);
78 ClassDef(AliITSCalibrationPixUpg,1) // pixels response