1 #ifndef AliTOFDataDCS_H
2 #define AliTOFDataDCS_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
18 class AliTOFFormatDCS;
20 // AliTOFDataDCS class
21 // main aim is to process DCS data
22 // in order to obtain the data to be stored in the OCDB
24 class AliTOFDataDCS : public TObject {
26 enum {kNAliases=10512, kNHV=90, kNLV=576,
27 kNLV33=72, kNLV50=72, kNLV48=72,
28 kNFEEthr=1152, kNFEEtfeac=576, kNFEEttrm=6840,
32 AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime);
33 AliTOFDataDCS(const AliTOFDataDCS & data);
34 AliTOFDataDCS& operator=(const AliTOFDataDCS & data);
37 void SetRun(Int_t run) {fRun = run;}
38 void SetStartTime(Int_t startTime) {fStartTime = startTime;}
39 void SetEndTime(Int_t endTime) {fEndTime = endTime;}
40 Int_t GetRun() const {return fRun;}
41 Int_t GetStartTime() const {return fStartTime;}
42 Int_t GetEndTime() const {return fEndTime;}
44 Bool_t ProcessData(TMap& aliasMap);
46 const char* GetAliasName(Int_t pos) const
47 {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
49 void Draw(const Option_t* /*option*/);
51 AliTOFFormatDCS* GetHVvp(Int_t pos) const
52 {return pos<kNHV ? fHVvp[pos] : 0;}
53 AliTOFFormatDCS* GetHVvn(Int_t pos) const
54 {return pos<kNHV ? fHVvn[pos] : 0;}
55 AliTOFFormatDCS* GetHVip(Int_t pos) const
56 {return pos<kNHV ? fHVip[pos] : 0;}
57 AliTOFFormatDCS* GetHVin(Int_t pos) const
58 {return pos<kNHV ? fHVin[pos] : 0;}
59 AliTOFFormatDCS* GetLVv(Int_t pos) const
60 {return pos<kNLV ? fLVv[pos] : 0;}
61 AliTOFFormatDCS* GetLVi(Int_t pos) const
62 {return pos<kNLV ? fLVi[pos] : 0;}
63 AliTOFFormatDCS* GetLVv33(Int_t pos) const
64 {return pos<kNLV ? fLVv33[pos] : 0;}
65 AliTOFFormatDCS* GetLVi33(Int_t pos) const
66 {return pos<kNLV ? fLVi33[pos] : 0;}
67 AliTOFFormatDCS* GetLVv50(Int_t pos) const
68 {return pos<kNLV ? fLVv50[pos] : 0;}
69 AliTOFFormatDCS* GetLVi50(Int_t pos) const
70 {return pos<kNLV ? fLVi50[pos] : 0;}
71 AliTOFFormatDCS* GetLVv48(Int_t pos) const
72 {return pos<kNLV ? fLVv48[pos] : 0;}
73 AliTOFFormatDCS* GetLVi48(Int_t pos) const
74 {return pos<kNLV ? fLVi48[pos] : 0;}
75 AliTOFFormatDCS* GetFEEthr(Int_t pos) const
76 {return pos<kNFEEthr ? fFEEthr[pos] : 0;}
77 AliTOFFormatDCS* GetFEEtfeac(Int_t pos) const
78 {return pos<kNFEEtfeac ? fFEEtfeac[pos] : 0;}
79 AliTOFFormatDCS* GetFEEttrm(Int_t pos) const
80 {return pos<kNFEEttrm ? fFEEttrm[pos] : 0;}
84 void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const;
85 void CreateHisto(int nbin);
87 Int_t fRun; // Run number
88 Int_t fStartTime; // start time
89 Int_t fEndTime; // end time
92 TString fAliasNames[kNAliases]; // aliases for DCS data
93 AliTOFFormatDCS *fHVvp[kNHV]; // HV voltages, positive ch
94 AliTOFFormatDCS *fHVvn[kNHV]; // HV voltages, negative ch
95 AliTOFFormatDCS *fHVip[kNHV]; // HV currents, positive ch
96 AliTOFFormatDCS *fHVin[kNHV]; // HV currents, negative ch
97 AliTOFFormatDCS *fLVv[kNLV]; // LV fea voltages
98 AliTOFFormatDCS *fLVi[kNLV]; // LV fea currents
99 AliTOFFormatDCS *fLVv33[kNLV33]; // LV 3.3 V voltages
100 AliTOFFormatDCS *fLVi33[kNLV33]; // LV 3.3 V currents
101 AliTOFFormatDCS *fLVv50[kNLV50]; // LV 5.0 V voltages
102 AliTOFFormatDCS *fLVi50[kNLV50]; // LV 5.0 V currents
103 AliTOFFormatDCS *fLVv48[kNLV48]; // LV 48 V voltages
104 AliTOFFormatDCS *fLVi48[kNLV48]; // LV 48 V currents
105 AliTOFFormatDCS *fFEEthr[kNFEEthr]; // FEE thresholds
106 AliTOFFormatDCS *fFEEtfeac[kNFEEtfeac];// FEE feac temperatures
107 AliTOFFormatDCS *fFEEttrm[kNFEEttrm]; // FEE trm temperatures
109 Bool_t fIsProcessed; // bool to know processing status
111 ClassDef(AliTOFDataDCS, 3);