Line data Source code
1 : #ifndef ALIITSONLINECALIBRATIONSPD_H
2 : #define ALIITSONLINECALIBRATIONSPD_H
3 :
4 : ///////////////////////////////////////////////////////////////////////
5 : // Author: Henrik Tydesjo //
6 : // This class is used as a container to keep the dead,noisy,active //
7 : // pixels online. Each object corresponds to one DDL (eq). //
8 : // Note: This class should not be used directly. //
9 : // Use it via AliITSOnlineCalibrationSPDhandler instead. //
10 : ///////////////////////////////////////////////////////////////////////
11 :
12 : /* $Id$ */
13 :
14 : #include <TObject.h>
15 : #include <TArrayI.h>
16 :
17 0 : class AliITSOnlineCalibrationSPD : public TObject {
18 :
19 : public:
20 : AliITSOnlineCalibrationSPD();
21 0 : virtual ~AliITSOnlineCalibrationSPD() {}
22 :
23 0 : void SetEqNr(UInt_t eq) {fEqNr=eq;}
24 0 : UInt_t GetEqNr() const {return fEqNr;}
25 0 : void SetBadList(TArrayI badlist) {fBadChannels=badlist;}
26 0 : void SetNrBad(UInt_t nr) {fNrBad=nr;}
27 :
28 0 : UInt_t GetNrBad() const {return fNrBad;}
29 : Int_t GetKeyAt(UInt_t index) const; //returns -1 if out of bounds
30 :
31 0 : void ClearBad() {fBadChannels.Reset(); fNrBad=0;}
32 :
33 : void ActivateALL();
34 : void ActivateEq(Bool_t setval = kTRUE);
35 : void ActivateHS(UInt_t hs, Bool_t setval = kTRUE);
36 : void ActivateChip(UInt_t hs, UInt_t chip, Bool_t setval = kTRUE);
37 :
38 : Bool_t IsActiveEq() const;
39 : Bool_t IsActiveHS(UInt_t hs) const;
40 : Bool_t IsActiveChip(UInt_t hs, UInt_t chip) const;
41 :
42 : void UnSetDeadALL();
43 : void SetDeadEq(Bool_t setval = kTRUE);
44 : void SetDeadHS(UInt_t hs, Bool_t setval = kTRUE);
45 : void SetDeadChip(UInt_t hs, UInt_t chip, Bool_t setval = kTRUE);
46 :
47 : Bool_t IsDeadEq() const;
48 : Bool_t IsDeadHS(UInt_t hs) const;
49 : Bool_t IsDeadChip(UInt_t hs, UInt_t chip) const;
50 :
51 : private:
52 : UInt_t fEqNr; // eq nr
53 : UInt_t fNrBad; // nr of bad (single) pixels
54 : TArrayI fBadChannels; // array of keys for the bad (single) pixels
55 : Bool_t fActiveEq; // active bit for each equipment
56 : Bool_t fActiveHS[6]; // active bit for each half-stave
57 : Bool_t fActiveChip[60]; // active bit for each chip
58 : Bool_t fDeadEq; // dead bit for each equipment
59 : Bool_t fDeadHS[6]; // dead bit for each half-stave
60 : Bool_t fDeadChip[60]; // dead bit for each chip
61 :
62 116 : ClassDef(AliITSOnlineCalibrationSPD,3)
63 : };
64 :
65 : #endif
|