LUTs mapping symnames and original global matrices removed from AliGeomManager, which...
[u/mrichter/AliRoot.git] / VZERO / AliVZERODataDCS.h
1 #ifndef AliVZERODataDCS_H
2 #define AliVZERODataDCS_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 "TObject.h" 
8 #include "TString.h"
9
10 #include <TClonesArray.h>
11 #include <TH1F.h>
12
13 class TMap;
14 class TH2F;
15 class TGraph;
16 class TF1;
17
18 // AliVZERODataDCS class
19 // main aim is to process DCS data
20 // in order to obtain the data to be stored in the OCDB
21
22 class AliVZERODataDCS : public TObject {
23 public:
24   enum {kNAliases=64,kNGraphs=64};
25   enum {kHvMin=0, kHvMax=2000};
26   
27   AliVZERODataDCS();
28   AliVZERODataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime);
29   ~AliVZERODataDCS();
30   
31   void SetRun(Int_t run) {fRun = run;}
32   void SetStartTime(Int_t startTime) {fStartTime = startTime;}
33   void SetEndTime(Int_t endTime) {fEndTime = endTime;}
34   Int_t GetRun() const {return fRun;}
35   Int_t GetStartTime() const {return fStartTime;}
36   Int_t GetEndTime() const {return fEndTime;}
37   
38   void ProcessData(TMap& aliasMap);
39   
40   const char* GetAliasName(Int_t pos) const 
41     {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
42   
43   void Draw(const Option_t* option);
44   
45   Float_t* GetMeanHV()   const {return (float*)fMeanHV;}
46   Float_t* GetWidthHV()   const {return (float*)fWidthHV;}
47
48 private:
49   AliVZERODataDCS(const AliVZERODataDCS&); // Not implemented
50   AliVZERODataDCS& operator=(const AliVZERODataDCS&); // Not implemented
51
52   void Init();
53   void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const;
54   void CreateGraph(int i, int dim, const Double_t *x, const Double_t *y);
55     
56   Int_t fRun;       // Run number
57   Int_t fStartTime; // start time
58   Int_t fEndTime;   // end time
59   
60   
61   TString fAliasNames[kNAliases];        // aliases for DCS data
62   TClonesArray fGraphs;         // Array containing  graphics
63   TH1F *fHv[kNAliases];
64   Float_t fMeanHV[kNAliases]; 
65   Float_t fWidthHV[kNAliases];
66  
67   Bool_t fIsProcessed;                   // bool to know processing status
68   
69   ClassDef(AliVZERODataDCS, 2);
70 };
71
72 #endif