4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
8 #include <TClonesArray.h>
18 // main aim is to process DCS data
19 // in order to obtain the data to be stored in the OCDB
21 class AliADDataDCS : public TObject {
23 enum {kNAliases=60,kNGraphs=16,kNHvChannel=16,kNLvChannel=4,kNCIUBoards = 2};
24 enum {kHvMin=0, kHvMax=3000};
27 AliADDataDCS(Int_t nRun, UInt_t timeCreated, UInt_t timeCompleted, UInt_t daqStart, UInt_t daqEnd, UInt_t ctpStart, UInt_t ctpEnd);
30 void SetRun(Int_t run) {fRun = run;}
31 void SetStartTime(Int_t startTime) {fStartTime = startTime;}
32 void SetEndTime(Int_t endTime) {fEndTime = endTime;}
33 void SetDaqStartTime(Int_t startTime) {fDaqStartTime = startTime;}
34 void SetDaqEndTime(Int_t endTime) {fDaqEndTime = endTime;}
35 Int_t GetRun() const {return fRun;}
36 Int_t GetStartTime() const {return fStartTime;}
37 Int_t GetEndTime() const {return fEndTime;}
38 Int_t GetDaqStartTime() const {return fDaqStartTime;}
39 Int_t GetDaqEndTime() const {return fDaqEndTime;}
41 Bool_t ProcessData(TMap& aliasMap);
43 const char* GetAliasName(Int_t pos) const
44 {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
46 void Draw(const Option_t* option);
48 Float_t* GetMeanHV() const {return (float*)fMeanHV;}
49 Float_t* GetWidthHV() const {return (float*)fWidthHV;}
50 Bool_t * GetDeadMap() const {return (bool*)fDeadChannel;}
51 TMap * GetFEEParameters() const {return fFEEParameters;};
53 // Getter of Offline Channel number as used in aliroot (defined by aliroot
54 // numbering convention) from DCS Channel number
56 Int_t GetOfflineChannel(Int_t channel) const
57 { Int_t fOfflineChannel[16] = {0, 1, 2, 3, 4, 5, 6, 7,
58 8, 9, 10, 11, 12, 13, 14, 15};
59 return fOfflineChannel[channel]; }
62 AliADDataDCS(const AliADDataDCS&); // Not implemented
63 AliADDataDCS& operator=(const AliADDataDCS&); // Not implemented
66 void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const;
67 void CreateGraph(int i, int dim, const Double_t *x, const Double_t *y);
69 Int_t fRun; // Run number
70 Int_t fStartTime; // start time (time created)
71 Int_t fEndTime; // end time (time completed)
72 UInt_t fDaqStartTime; // DAQ start time
73 UInt_t fDaqEndTime; // DAQ end time
74 UInt_t fCtpStartTime; // CTP start time
75 UInt_t fCtpEndTime; // CTP end time
77 TString fAliasNames[kNAliases]; // aliases for DCS data
78 TClonesArray fGraphs; // Array containing graphics
79 TH1F *fHv[kNHvChannel]; // High Voltage histograms
80 Float_t fMeanHV[kNHvChannel]; // High Voltage mean values
81 Float_t fWidthHV[kNHvChannel]; // High Voltage widths
82 Bool_t fDeadChannel[kNHvChannel]; // Dead Map
83 TMap * fFEEParameters; // TMap holding the FEE parameters of Time Resolution
85 Bool_t fIsProcessed; // bool to know processing status
87 ClassDef(AliADDataDCS, 7);