don't sort clusters after local reco, do this in AliITSUTrackerGlo
[u/mrichter/AliRoot.git] / ITS / UPGRADE / AliITSUCalibrationPix.h
CommitLineData
451f5018 1#ifndef ALIITSUCALIBRATIONPIX_H
2#define ALIITSUCALIBRATIONPIX_H
a84c4b15 3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
451f5018 6/* $Id: AliITSUCalibrationPix.h 53595 2011-12-14 16:13:16Z masera $ */
a84c4b15 7//#include "TRandom.h"
8#include "AliITSCalibration.h"
9#include "TArrayS.h"
10
11////////////////////////////////////////////////////
12// //
13// ITS response class for pixels //
14////////////////////////////////////////////////////
15
451f5018 16class AliITSUCalibrationPix : public AliITSCalibration {
a84c4b15 17 public:
451f5018 18 AliITSUCalibrationPix(); // default constructor
19 AliITSUCalibrationPix(Short_t nChips,Short_t nColPerChip,Short_t nRow); // default constructor
20 AliITSUCalibrationPix(const AliITSUCalibrationPix &src);
a84c4b15 21 //
451f5018 22 virtual ~AliITSUCalibrationPix() {;} // destructror
a84c4b15 23
24 virtual void ClearBad();
25
26 virtual Int_t GetNrBad() const;
27 virtual Int_t GetNrBadInChip(Int_t chip) const;
28 virtual Int_t GetNrBadInColumn(Int_t col) const;
29
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;
451f5018 33 virtual void GetBadPixelSingle(Int_t i,UInt_t &row, UInt_t &col) const;
a84c4b15 34
451f5018 35 virtual Int_t GetNrBadSingle() const {return fNrBadSingle;}
36 virtual void SetNrBadSingle(Int_t nr) {fNrBadSingle=nr;} // used to be called SetNrBad, but misleading
a84c4b15 37 virtual void SetBadList(TArrayS badlist) {fBadChannels=badlist;}
38 virtual void SetNrBad(Int_t /*nr*/); // Use SetNrBadSingle!!!
39
40 virtual Bool_t IsBad() const;
41 virtual Bool_t IsChipBad(Int_t chip) const;
42 virtual Bool_t IsColumnBad(Int_t col) const;
43 virtual Bool_t IsPixelBad(Int_t col, Int_t row) const;
44
45 virtual void SetChipBad(Int_t chip);
46 virtual void UnSetChipBad(Int_t chip);
47 Bool_t IsChipMarkedBad(Int_t c) const {return (fBadChips&(0x1<<c))!=0;}
48
49 virtual void AddBad(Int_t col, Int_t row);
50
51 virtual Int_t GetChipIndexFromCol(Int_t col) const;
52 // virtual Int_t GetChipFromChipIndex(Int_t index) const;
53
54 virtual void GiveCompressParam(Int_t *) const {NotImplemented("GiveCompressParam");}
55 virtual void SetDetParam(Double_t *) {NotImplemented("SetDetParam");}
56 virtual void GetDetParam(Double_t *) const {NotImplemented("GetDetParam");}
57 virtual void SetNDetParam(Int_t /*n*/) {NotImplemented("SetNDetParam");}
58 virtual Int_t NDetParam() const {NotImplemented("NDetParam"); return 0;}
59 virtual void SetSigmaSpread(Double_t, Double_t) {NotImplemented("SetSigmaSpread");}
60 virtual void SigmaSpread(Double_t & /* p1 */,Double_t & /* p2 */) const {NotImplemented("SigmaSpread");}
61 //
62 void SetColRowData(Short_t nchip, Short_t ncolperchip, Short_t nrow);
63 Int_t GetNCol() const {return fNCol;}
64 Int_t GetNRow() const {return fNRow;}
65 Int_t GetNColPerChip() const {return fNColPerChip;}
66 Int_t GetNChips() const {return fNChips;}
67 //
68 protected:
69 Short_t fNChips; // n of chips
70 Short_t fNColPerChip; // n of columns per chip
71 Short_t fNCol; // number of columns
72 Short_t fNRow; // number of rows
451f5018 73 Int_t fNrBadSingle; // Nr of SINGLE bad pixels
a84c4b15 74 UInt_t fBadChips; // bit pattern of completely dead chips?
451f5018 75 TArrayS fBadChannels; // Array with bad channels info (col0,row0,col1...rowN) N = fNrBadSingle
a84c4b15 76 //
451f5018 77 AliITSUCalibrationPix& operator=(const AliITSUCalibrationPix& source);
a84c4b15 78 //
451f5018 79 ClassDef(AliITSUCalibrationPix,1) // pixels response
a84c4b15 80};
81
82#endif