Line data Source code
1 : #ifndef ALITRDCalChamberStatus_H
2 : #define ALITRDCalChamberStatus_H
3 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 : * See cxx source for full Copyright notice */
5 :
6 : /* $Id$ */
7 :
8 : ///////////////////////////////////////////////////////////////////////////////
9 : // //
10 : // TRD calibration class for the status of a readout chamber //
11 : // //
12 : ///////////////////////////////////////////////////////////////////////////////
13 :
14 : #include <Rtypes.h>
15 : #include "TNamed.h"
16 :
17 : class TH2D;
18 0 : class AliTRDCalChamberStatus : public TNamed {
19 :
20 : public:
21 :
22 : enum { kNdet = 540, kNstacks = 90, kNcham = 5, kNsect = 18 };
23 : enum { kGood = 0, kNoData = 1, kNoDataHalfChamberSideA = 2, kNoDataHalfChamberSideB = 3, kBadCalibrated = 4, kNotCalibrated = 5};
24 :
25 : AliTRDCalChamberStatus();
26 : AliTRDCalChamberStatus(const Text_t* name, const Text_t* title);
27 :
28 0 : Char_t GetStatus(Int_t det) const { return fStatus[det]; };
29 : void SetStatus(Int_t det, Char_t status);
30 : void UnsetStatusBit(Int_t det, Char_t status);
31 :
32 456 : Bool_t IsGood(Int_t det) const { return TESTBIT(fStatus[det], kGood); }
33 4320 : Bool_t IsNoData(Int_t det) const { return TESTBIT(fStatus[det], kNoData); }
34 748800 : Bool_t IsNoDataSideA(Int_t det) const { return TESTBIT(fStatus[det], kNoDataHalfChamberSideA); }
35 748800 : Bool_t IsNoDataSideB(Int_t det) const { return TESTBIT(fStatus[det], kNoDataHalfChamberSideB); }
36 0 : Bool_t IsBadCalibrated(Int_t det) const { return TESTBIT(fStatus[det], kBadCalibrated); }
37 0 : Bool_t IsNotCalibrated(Int_t det) const { return TESTBIT(fStatus[det], kNotCalibrated); }
38 :
39 : TH2D *Plot(Int_t sm, Int_t rphi); // Plot fStatus for sm and halfchamberside
40 : TH2D *PlotNoData(Int_t sm, Int_t rphi); // Plot data status for sm and halfchamberside
41 : TH2D *PlotBadCalibrated(Int_t sm, Int_t rphi); // Plot calibration status for sm and halfchamberside
42 : TH2D *Plot(Int_t sm); // Plot fStatus for sm
43 :
44 :
45 : protected:
46 :
47 : Char_t fStatus[kNdet]; // Status byte
48 :
49 72 : ClassDef(AliTRDCalChamberStatus,1) // Defines the status of a single readout chamber
50 :
51 : };
52 :
53 : #endif
|