Line data Source code
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 : // AliTOFDataDCS class
10 : // main aim is to process DCS data
11 : // in order to obtain the data to be stored in the OCDB
12 :
13 : #include "TObject.h"
14 :
15 : class TMap;
16 : class TClonesArray;
17 : class TString;
18 : class AliTOFFormatDCS;
19 :
20 : class AliTOFDataDCS : public TObject {
21 : public:
22 : enum {kNAliases=360, kNHV=90};
23 :
24 : AliTOFDataDCS();
25 : AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery );
26 : AliTOFDataDCS(const AliTOFDataDCS & data);
27 : AliTOFDataDCS& operator=(const AliTOFDataDCS & data);
28 : ~AliTOFDataDCS();
29 :
30 0 : void SetRun(Int_t run) {fRun = run;}
31 0 : void SetStartTime(Int_t startTime) {fStartTime = startTime;}
32 0 : void SetEndTime(Int_t endTime) {fEndTime = endTime;}
33 0 : void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
34 0 : void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
35 0 : Int_t GetRun() const {return fRun;}
36 0 : Int_t GetStartTime() const {return fStartTime;}
37 0 : Int_t GetEndTime() const {return fEndTime;}
38 0 : Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
39 0 : Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}
40 :
41 : Bool_t ProcessData(TMap& aliasMap);
42 :
43 : const char* GetAliasName(Int_t pos) const
44 0 : {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
45 :
46 : void Draw(const Option_t* /*option*/);
47 :
48 : AliTOFFormatDCS* GetHVvp(Int_t pos) const
49 0 : {return pos<kNHV ? fHVvp[pos] : 0;}
50 : AliTOFFormatDCS* GetHVvn(Int_t pos) const
51 0 : {return pos<kNHV ? fHVvn[pos] : 0;}
52 : AliTOFFormatDCS* GetHVip(Int_t pos) const
53 0 : {return pos<kNHV ? fHVip[pos] : 0;}
54 : AliTOFFormatDCS* GetHVin(Int_t pos) const
55 0 : {return pos<kNHV ? fHVin[pos] : 0;}
56 :
57 0 : void SetFDRFlag(Bool_t flag) {fFDR = flag;}
58 0 : Bool_t GetFDRFlag() const {return fFDR;}
59 :
60 : private:
61 : void Init();
62 : void Introduce(UInt_t numAlias, const TObjArray* aliasArr) const;
63 : void CreateHisto(int nbin);
64 :
65 : Int_t fRun; // Run number
66 : Int_t fStartTime; // start time
67 : Int_t fEndTime; // end time
68 : Int_t fStartTimeDCSQuery; // start time DCSQuery
69 : Int_t fEndTimeDCSQuery; // end time DCSQuery
70 :
71 : TString fAliasNames[kNAliases]; // aliases for DCS data
72 : AliTOFFormatDCS *fHVvp[kNHV]; // HV voltages, positive ch
73 : AliTOFFormatDCS *fHVvn[kNHV]; // HV voltages, negative ch
74 : AliTOFFormatDCS *fHVip[kNHV]; // HV currents, positive ch
75 : AliTOFFormatDCS *fHVin[kNHV]; // HV currents, negative ch
76 :
77 : Bool_t fIsProcessed; // bool to know processing status
78 : Bool_t fFDR; // bool to know whether we are in a FDR run
79 :
80 26 : ClassDef(AliTOFDataDCS, 5);
81 : };
82 :
83 : #endif
|