Line data Source code
1 : #ifndef ALITOFCHANNELONLINESTATUSARRAY_H
2 : #define ALITOFCHANNELONLINESTATUSARRAY_H
3 :
4 : /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 : * See cxx source for full Copyright notice */
6 : /* $Id$ */
7 :
8 : ////////////////////////////////////////////////
9 : // class for TOF Online calibration //
10 : // to define the status of the channels //
11 : // New object created, to use an array //
12 : // instead of a TObjArray. //
13 : // Storing all the info coming from //
14 : // HW FEE map, pulser runs, and noise runs //
15 : // in a single object (char). //
16 : ////////////////////////////////////////////////
17 :
18 : #include "TObject.h"
19 :
20 : class AliTOFChannelOnlineStatusArray: public TObject {
21 :
22 : public:
23 :
24 : enum{
25 : kTOFOnlineUnknown=0x0, kTOFOnlineOk=0x15, kTOFOnlineBad=0x2a,
26 : kTOFHWUnknown=0x0, kTOFHWOk=0x1, kTOFHWBad=0x2, kTOFHWReset=0xfc, kTOFHW=0x3,
27 : kTOFPulserUnknown=0x0, kTOFPulserOk=0x4, kTOFPulserBad=0x8, kTOFPulserReset=0xf3, kTOFPulser=0xc,
28 : kTOFNoiseUnknown=0x0, kTOFNoiseOk=0x10, kTOFNoiseBad=0x20, kTOFNoiseReset=0xcf, kTOFNoise=0x30
29 : };
30 :
31 : AliTOFChannelOnlineStatusArray();
32 : AliTOFChannelOnlineStatusArray(Int_t size);
33 : AliTOFChannelOnlineStatusArray(const AliTOFChannelOnlineStatusArray &source);
34 : AliTOFChannelOnlineStatusArray& operator= (const AliTOFChannelOnlineStatusArray &source);
35 : ~AliTOFChannelOnlineStatusArray();
36 0 : Int_t GetSize() const {return fSize;}
37 : void SetStatus(Int_t pos, UChar_t parr);
38 : void SetHWStatus(Int_t pos, UChar_t parr);
39 : void SetPulserStatus(Int_t pos, UChar_t parr);
40 : void SetNoiseStatus(Int_t pos, UChar_t parr);
41 : void SetLatencyWindow(Int_t pos, Int_t parr);
42 : UChar_t GetStatus(Int_t pos) const;
43 : UChar_t GetHWStatus(Int_t pos) const;
44 : UChar_t GetPulserStatus(Int_t pos) const;
45 : UChar_t GetNoiseStatus(Int_t pos) const;
46 : Int_t GetLatencyWindow(Int_t pos) const;
47 0 : Bool_t HasLatencyWindow() {return fLatencyWindow != NULL;};
48 :
49 : private:
50 : Int_t fSize; // Size of the array of UChar_t
51 : UChar_t * fArray; //[fSize]
52 : Int_t *fLatencyWindow; //[fSize]
53 :
54 2918 : ClassDef(AliTOFChannelOnlineStatusArray,2) // TOF Sensor Online Calibration object
55 : };
56 :
57 : #endif
|