]> git.uio.no Git - u/mrichter/AliRoot.git/blob - TOF/AliTOFDataDCS.h
Fix to provide correct EMCAL mapping info (David)
[u/mrichter/AliRoot.git] / TOF / AliTOFDataDCS.h
1 #ifndef AliTOFDataDCS_H
2 #define AliTOFDataDCS_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6
7 /* $Id$ */
8
9 #include "TObject.h" 
10 //#include "TString.h"
11
12 class TMap;
13 class TClonesArray;
14 //class TH2F;
15 //class TGraph;
16 //class TF1;
17 class TString;
18 class AliTOFFormatDCS;
19
20 // AliTOFDataDCS class
21 // main aim is to process DCS data
22 // in order to obtain the data to be stored in the OCDB
23
24 class AliTOFDataDCS : public TObject {
25 public:
26   enum {kNAliases=360, kNHV=90};
27   
28   AliTOFDataDCS();
29   AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery );
30   AliTOFDataDCS(const AliTOFDataDCS & data);
31   AliTOFDataDCS& operator=(const AliTOFDataDCS & data);
32   ~AliTOFDataDCS();
33   
34   void SetRun(Int_t run) {fRun = run;}
35   void SetStartTime(Int_t startTime) {fStartTime = startTime;}
36   void SetEndTime(Int_t endTime) {fEndTime = endTime;}
37   void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
38   void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
39   Int_t GetRun() const {return fRun;}
40   Int_t GetStartTime() const {return fStartTime;}
41   Int_t GetEndTime() const {return fEndTime;}
42   Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
43   Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}
44   
45   Bool_t ProcessData(TMap& aliasMap);
46   
47   const char* GetAliasName(Int_t pos) const 
48     {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
49   
50   void Draw(const Option_t* /*option*/);
51   
52   AliTOFFormatDCS* GetHVvp(Int_t pos) const
53     {return pos<kNHV ? fHVvp[pos] : 0;}
54   AliTOFFormatDCS* GetHVvn(Int_t pos) const 
55     {return pos<kNHV ? fHVvn[pos] : 0;}
56   AliTOFFormatDCS* GetHVip(Int_t pos) const 
57     {return pos<kNHV ? fHVip[pos] : 0;}
58   AliTOFFormatDCS* GetHVin(Int_t pos) const 
59     {return pos<kNHV ? fHVin[pos] : 0;}
60
61   void SetFDRFlag(Bool_t flag) {fFDR = flag;}
62   Bool_t GetFDRFlag() const {return fFDR;}
63
64 private:
65   void Init();
66   void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const;
67   void CreateHisto(int nbin);
68   
69   Int_t fRun;       // Run number
70   Int_t fStartTime; // start time
71   Int_t fEndTime;   // end time  
72   Int_t fStartTimeDCSQuery; // start time DCSQuery
73   Int_t fEndTimeDCSQuery;   // end time DCSQuery
74   
75   TString fAliasNames[kNAliases];        // aliases for DCS data
76   AliTOFFormatDCS *fHVvp[kNHV];          // HV voltages, positive ch
77   AliTOFFormatDCS *fHVvn[kNHV];          // HV voltages, negative ch
78   AliTOFFormatDCS *fHVip[kNHV];          // HV currents, positive ch
79   AliTOFFormatDCS *fHVin[kNHV];          // HV currents, negative ch
80   
81   Bool_t fIsProcessed;                   // bool to know processing status
82   Bool_t fFDR;                   // bool to know whether we are in a FDR run
83   
84   ClassDef(AliTOFDataDCS, 5);
85 };
86
87 #endif