Line data Source code
1 : #ifndef AliZDCDataDCS_H
2 : #define AliZDCDataDCS_H
3 :
4 : ////////////////////////////////////////////////
5 : // Class for ZDC DCS data //
6 : ////////////////////////////////////////////////
7 :
8 :
9 : #include <TMap.h>
10 :
11 : class AliZDCDataDCS : public TObject {
12 : public:
13 : enum {kNAliases=28, kNAlignDet=4, kNHVChannels=24};
14 :
15 : AliZDCDataDCS();
16 : AliZDCDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime,
17 : UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery);
18 : AliZDCDataDCS(const AliZDCDataDCS & data);
19 : AliZDCDataDCS& operator=(const AliZDCDataDCS & data);
20 : ~AliZDCDataDCS();
21 :
22 0 : void SetRun(Int_t run) {fRun = run;}
23 0 : void SetStartTime(Int_t startTime) {fStartTime = startTime;}
24 0 : void SetEndTime(Int_t endTime) {fEndTime = endTime;}
25 0 : void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
26 0 : void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
27 : //
28 0 : Int_t GetRun() const {return fRun;}
29 0 : Int_t GetStartTime() const {return fStartTime;}
30 0 : Int_t GetEndTime() const {return fEndTime;}
31 0 : Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
32 0 : Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}
33 0 : Float_t GetAlignData(Int_t i) const {return fAlignData[i];}
34 : // Float_t* GetTimeStamp() const {return (float*)fTimeStamp;}
35 : // Float_t* GetHVData() const {return (float*)fHVData;}
36 :
37 : Bool_t ProcessData(TMap& aliasMap);
38 :
39 : const char* GetAliasName(UInt_t pos) const
40 0 : {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
41 :
42 : private:
43 : void Init();
44 : void Introduce(UInt_t numAlias, const TObjArray* aliasArr);
45 :
46 : Int_t fRun; // Run number
47 : UInt_t fStartTime; // Start of run time
48 : UInt_t fEndTime; // End of run time
49 : Int_t fStartTimeDCSQuery; // start time DCSQuery
50 : Int_t fEndTimeDCSQuery; // end time DCSQuery
51 :
52 : TString fAliasNames[kNAliases]; // Name of the aliases provided by the DCS
53 : Float_t fAlignData[kNAlignDet]; // Array containing alignment data
54 : // Float_t *fTimeStamp; // Array containing time stamps
55 : // Float_t *fHVData; // Array containing HV values
56 :
57 : Bool_t fIsProcessed; // Flag set when data are processed
58 :
59 12 : ClassDef(AliZDCDataDCS, 6);
60 : };
61 :
62 : #endif
|