]>
Commit | Line | Data |
---|---|---|
345932e4 | 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 AliTOFFormatDCS; | |
18 | ||
19 | // AliTOFDataDCS class | |
20 | // main aim is to process DCS data | |
21 | // in order to obtain the data to be stored in the OCDB | |
22 | ||
23 | class AliTOFDataDCS : public TObject { | |
24 | public: | |
25 | enum {kNAliases=10442, kNHV=90, kNLV=576, | |
26 | kNFEEthr=1152, kNFEEt=7776, kNFunctions=0, | |
27 | kNT=1, kNP=1}; | |
28 | ||
29 | AliTOFDataDCS(); | |
30 | AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime); | |
31 | AliTOFDataDCS(const AliTOFDataDCS & data); | |
32 | AliTOFDataDCS& operator=(const AliTOFDataDCS & data); | |
33 | ~AliTOFDataDCS(); | |
34 | ||
35 | void SetRun(Int_t run) {fRun = run;} | |
36 | void SetStartTime(Int_t startTime) {fStartTime = startTime;} | |
37 | void SetEndTime(Int_t endTime) {fEndTime = endTime;} | |
38 | Int_t GetRun() const {return fRun;} | |
39 | Int_t GetStartTime() const {return fStartTime;} | |
40 | Int_t GetEndTime() const {return fEndTime;} | |
41 | ||
42 | void ProcessData(TMap& aliasMap); | |
43 | ||
44 | const char* GetAliasName(Int_t pos) const | |
45 | {return pos<kNAliases ? fAliasNames[pos].Data() : 0;} | |
46 | ||
47 | ||
48 | Float_t* GetT() const; | |
49 | Float_t* GetP() const; | |
50 | ||
51 | Float_t GetT(Int_t i) const {return fT[i];} | |
52 | Float_t GetP(Int_t i) const {return fP[i];} | |
53 | Float_t GetSlopeT() const {return fT[0];} | |
54 | Float_t GetInterceptT() const {return fT[1];} | |
55 | Float_t GetMaxT()const {return fT[2];} | |
56 | Float_t GetSlopeP() const {return fP[0];} | |
57 | Float_t GetInterceptP() const {return fP[1];} | |
58 | Float_t GetMaxP() const {return fP[2];} | |
59 | ||
60 | void SetSlopeT(Float_t slopeT) {fT[0]=slopeT;} | |
61 | void SetInterceptT(Float_t interceptT) {fT[1]=interceptT;} | |
62 | void SetMaxT(Float_t maxT) {fT[2]=maxT;} | |
63 | void SetSlopeP(Float_t slopeP) {fP[0]=slopeP;} | |
64 | void SetInterceptP(Float_t interceptP) {fP[1]=interceptP;} | |
65 | void SetMaxP(Float_t maxP) {fP[2]=maxP;} | |
66 | ||
67 | void Draw(const Option_t* option); | |
68 | ||
69 | AliTOFFormatDCS* GetHVvpos(Int_t pos) const | |
70 | {return pos<kNHV ? fHVvpos[pos] : 0;} | |
71 | AliTOFFormatDCS* GetHVvneg(Int_t pos) const | |
72 | {return pos<kNHV ? fHVvneg[pos] : 0;} | |
73 | AliTOFFormatDCS* GetHVcpos(Int_t pos) const | |
74 | {return pos<kNHV ? fHVcpos[pos] : 0;} | |
75 | AliTOFFormatDCS* GetHVcneg(Int_t pos) const | |
76 | {return pos<kNHV ? fHVcneg[pos] : 0;} | |
77 | AliTOFFormatDCS* GetLVv(Int_t pos) const | |
78 | {return pos<kNLV ? fLVv[pos] : 0;} | |
79 | AliTOFFormatDCS* GetLVc(Int_t pos) const | |
80 | {return pos<kNLV ? fLVc[pos] : 0;} | |
81 | AliTOFFormatDCS* GetFEEthr(Int_t pos) const | |
82 | {return pos<kNFEEthr ? fFEEthr[pos] : 0;} | |
83 | AliTOFFormatDCS* GetFEEt(Int_t pos) const | |
84 | {return pos<kNFEEt ? fFEEt[pos] : 0;} | |
85 | ||
86 | private: | |
87 | void Init(); | |
88 | void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const; | |
89 | void CreateHisto(int nbin); | |
90 | ||
91 | Int_t fRun; // Run number | |
92 | Int_t fStartTime; // start time | |
93 | Int_t fEndTime; // end time | |
94 | ||
95 | ||
96 | TString fAliasNames[kNAliases]; // aliases for DCS data | |
97 | AliTOFFormatDCS *fHVvpos[kNHV]; // HV voltages, positive ch | |
98 | AliTOFFormatDCS *fHVvneg[kNHV]; // HV voltages, negative ch | |
99 | AliTOFFormatDCS *fHVcpos[kNHV]; // HV currents, positive ch | |
100 | AliTOFFormatDCS *fHVcneg[kNHV]; // HV currents, negative ch | |
101 | AliTOFFormatDCS *fLVv[kNLV]; // LV voltages | |
102 | AliTOFFormatDCS *fLVc[kNLV]; // LV currents | |
103 | AliTOFFormatDCS *fFEEthr[kNFEEthr]; // FEE thresholds | |
104 | AliTOFFormatDCS *fFEEt[kNFEEt]; // FEE temperatures | |
105 | Float_t fT[3]; // environment temperature | |
106 | Float_t fP[3]; // environment pressure | |
107 | ||
108 | Bool_t fIsProcessed; // bool to know processing status | |
109 | ||
110 | ClassDef(AliTOFDataDCS, 2); | |
111 | }; | |
112 | ||
113 | #endif |