Line data Source code
1 : #ifndef ALI_ITS_ONLINESPDSCANINFO_H
2 : #define ALI_ITS_ONLINESPDSCANINFO_H
3 :
4 : /////////////////////////////////////////////////////////////////
5 : // Author: Henrik Tydesjo //
6 : // This class is used as a container online. //
7 : // It holds information needed for a scan. //
8 : // This class should only be used through the interface of the //
9 : // AliITSOnlineSPDscan class. //
10 : /////////////////////////////////////////////////////////////////
11 :
12 : #include <TObject.h>
13 : #include <TArrayI.h>
14 :
15 0 : class AliITSOnlineSPDscanInfo : public TObject {
16 :
17 : public:
18 : AliITSOnlineSPDscanInfo();
19 : virtual ~AliITSOnlineSPDscanInfo();
20 :
21 : virtual UInt_t AddScanStep(); // returns the index (nsi) of the added step
22 : virtual void ClearThis();
23 : // SET METHODS ***********************************
24 0 : void SetType(UInt_t val) {fType=val;}
25 0 : void SetRunNr(UInt_t val) {fRunNr=val;}
26 0 : void SetRouterNr(UInt_t val) {fRouterNr=val;}
27 : void SetHalfStaveScanned(UInt_t val, Bool_t b);
28 0 : void SetDataFormat(UInt_t val) {fDataFormat=val;}
29 : void SetTriggers(UInt_t nsi, UInt_t val);
30 0 : void SetChipPresent(UInt_t hs, UInt_t chipi, Bool_t val) {fChipPresent[hs*10+chipi]=val;}
31 0 : void SetRowStart(UInt_t val){fRowStart=val;}
32 0 : void SetRowEnd(UInt_t val){fRowEnd=val;}
33 0 : void SetDacStart(UInt_t val){fDacStart=val;}
34 0 : void SetDacEnd(UInt_t val){fDacEnd=val;}
35 0 : void SetDacStep(UInt_t val){fDacStep=val;}
36 0 : void SetDCSVersion(UInt_t val){fDCSVersion=val;}
37 :
38 : void IncrementTriggers(UInt_t nsi);
39 :
40 : // GET METHODS ***********************************
41 0 : UInt_t GetNSteps() const {return fNSteps;}
42 0 : UInt_t GetType() const {return fType;}
43 0 : UInt_t GetRunNr() const {return fRunNr;}
44 0 : UInt_t GetRouterNr() const {return fRouterNr;}
45 : Bool_t GetHalfStaveScanned(UInt_t val);
46 0 : UInt_t GetDataFormat() const {return fDataFormat;}
47 : UInt_t GetTriggers(UInt_t nsi) const ;
48 0 : Bool_t GetChipPresent(UInt_t hs, UInt_t chipi) const {return fChipPresent[hs*10+chipi];}
49 0 : UInt_t GetRowStart() const {return fRowStart;}
50 0 : UInt_t GetRowEnd() const {return fRowEnd;}
51 0 : UInt_t GetDacStart() const {return fDacStart;}
52 0 : UInt_t GetDacEnd() const {return fDacEnd;}
53 0 : UInt_t GetDacStep() const {return fDacStep;}
54 0 : UInt_t GetDCSVersion() const {return fDCSVersion;}
55 :
56 : protected:
57 : UInt_t fType; // type of calibration scan
58 : UInt_t fDataFormat; // data format (normal or histogram)
59 : UInt_t fRunNr; // run nr
60 : UInt_t fRouterNr; // router nr
61 : Bool_t fHalfStaveScanned[6]; // half stave scanned
62 : UInt_t fNSteps; // nr of s-curve steps
63 : TArrayI fTriggers; // number of triggers for the different steps of the scan
64 : Bool_t fChipPresent[60]; // which chips are present
65 : UInt_t fRowStart; // row start
66 : UInt_t fRowEnd; // row end
67 : UInt_t fDacStep; // dac step
68 : UInt_t fDacStart; // dac start
69 : UInt_t fDacEnd; // dac end
70 : UInt_t fDCSVersion; // ConfigDB version
71 :
72 116 : ClassDef(AliITSOnlineSPDscanInfo,2)
73 : };
74 :
75 : #endif
|