new DSC datapoints and time stamp from Tomek
[u/mrichter/AliRoot.git] / T0 / AliT0DataDCS.h
1 #ifndef AliT0DataDCS_H
2 #define AliT0DataDCS_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 #include <TMap.h>
8 #include <TClonesArray.h>
9 #include <TGraph.h>
10
11 // AliT0DataDCS class
12 // fetching T0 data points from DCS, calculating mean values for the run
13 // and storing the result to Reference DB
14
15 class AliT0DataDCS : public TObject {
16 public:
17         enum {kNAliases=184, kHV=12, kLV=2, kCFD=12, kScalers=32, kTRM=10, kDRM=5}; //184
18
19         AliT0DataDCS();
20         AliT0DataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery);
21         AliT0DataDCS(const AliT0DataDCS & data);
22         AliT0DataDCS& operator=(const AliT0DataDCS & data);
23         ~AliT0DataDCS();
24
25         void SetRun(Int_t run) {fRun = run;}
26         void SetStartTime(Int_t startTime) {fStartTime = startTime;}
27         void SetEndTime(Int_t endTime) {fEndTime = endTime;}
28         void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
29         void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
30         Int_t GetRun() const {return fRun;}
31         Int_t GetStartTime() const {return fStartTime;}
32         Int_t GetEndTime() const {return fEndTime;}
33         Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
34         Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}     
35
36         Bool_t ProcessData(TMap& aliasMap);
37
38         const char* GetAliasName(Int_t pos) const {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
39 private:
40         void Init();
41         void Introduce(UInt_t numAlias, const TObjArray* aliasArr)const;
42
43         Int_t fRun;     // Run number
44         UInt_t fStartTime;      // Start time
45         UInt_t fEndTime;        // End time
46         Int_t fStartTimeDCSQuery; // Begin time DCSQuery
47         Int_t fEndTimeDCSQuery;   // End time DCSQuery
48         Float_t fHViA[kHV];
49         Float_t fHVvA[kHV]; 
50         Float_t fLViA[kLV]; 
51         Float_t fLVvA[kLV];
52         Float_t fHViC[kHV];
53         Float_t fHVvC[kHV];
54         Float_t fLViC[kLV];
55         Float_t fLVvC[kLV];
56         Float_t fCFDtA[kCFD];
57         Float_t fCFDwA[kCFD];
58         Float_t fCFDtC[kCFD];
59         Float_t fCFDwC[kCFD];
60         Float_t fScalerMean[kScalers];  // Mean value of T0 scaler counts from the entire run
61         Float_t fScalerSecMean[kScalers];
62         Float_t fTRM[kTRM];
63         Float_t fDRM[kDRM];
64         Float_t fAtten; 
65         TString fAliasNames[kNAliases];         // T0 data points aliases  
66         Bool_t fIsProcessed;                    // status - was processing data successful
67         ClassDef(AliT0DataDCS, 3);
68
69 protected:
70 };
71
72 #endif