Bug #92237 fixed as Barth suggested
[u/mrichter/AliRoot.git] / ZDC / AliZDCDataDCS.h
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     void SetRun(Int_t run) {fRun = run;}
23     void SetStartTime(Int_t startTime) {fStartTime = startTime;}
24     void SetEndTime(Int_t endTime) {fEndTime = endTime;}
25     void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
26     void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
27     //
28     Int_t GetRun() const {return fRun;}
29     Int_t GetStartTime() const {return fStartTime;}
30     Int_t GetEndTime() const {return fEndTime;}
31     Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
32     Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}
33     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                 {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     ClassDef(AliZDCDataDCS, 6);
60 };
61
62 #endif