Updates
[u/mrichter/AliRoot.git] / TOF / AliTOFDataDCS.h
CommitLineData
051a7fe6 1#ifndef ALITOFDATADCS_H
2#define ALITOFDATADCS_H
345932e4 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
051a7fe6 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
345932e4 13#include "TObject.h"
345932e4 14
15class TMap;
16class TClonesArray;
5c7c93fa 17class TString;
345932e4 18class AliTOFFormatDCS;
19
345932e4 20class AliTOFDataDCS : public TObject {
21public:
d202b31a 22 enum {kNAliases=360, kNHV=90};
345932e4 23
24 AliTOFDataDCS();
ff326f84 25 AliTOFDataDCS(Int_t nRun, UInt_t startTime, UInt_t endTime, UInt_t startTimeDCSQuery, UInt_t endTimeDCSQuery );
345932e4 26 AliTOFDataDCS(const AliTOFDataDCS & data);
27 AliTOFDataDCS& operator=(const AliTOFDataDCS & data);
28 ~AliTOFDataDCS();
29
30 void SetRun(Int_t run) {fRun = run;}
31 void SetStartTime(Int_t startTime) {fStartTime = startTime;}
32 void SetEndTime(Int_t endTime) {fEndTime = endTime;}
ff326f84 33 void SetStartTimeDCSQuery(Int_t startTimeDCSQuery) {fStartTimeDCSQuery = startTimeDCSQuery;}
34 void SetEndTimeDCSQuery(Int_t endTimeDCSQuery) {fEndTimeDCSQuery = endTimeDCSQuery;}
345932e4 35 Int_t GetRun() const {return fRun;}
36 Int_t GetStartTime() const {return fStartTime;}
37 Int_t GetEndTime() const {return fEndTime;}
ff326f84 38 Int_t GetStartTimeDCSQuery() const {return fStartTimeDCSQuery;}
39 Int_t GetEndTimeDCSQuery() const {return fEndTimeDCSQuery;}
345932e4 40
ebab534a 41 Bool_t ProcessData(TMap& aliasMap);
345932e4 42
43 const char* GetAliasName(Int_t pos) const
44 {return pos<kNAliases ? fAliasNames[pos].Data() : 0;}
45
b52b97c2 46 void Draw(const Option_t* /*option*/);
345932e4 47
8259e6f8 48 AliTOFFormatDCS* GetHVvp(Int_t pos) const
49 {return pos<kNHV ? fHVvp[pos] : 0;}
50 AliTOFFormatDCS* GetHVvn(Int_t pos) const
51 {return pos<kNHV ? fHVvn[pos] : 0;}
52 AliTOFFormatDCS* GetHVip(Int_t pos) const
53 {return pos<kNHV ? fHVip[pos] : 0;}
54 AliTOFFormatDCS* GetHVin(Int_t pos) const
55 {return pos<kNHV ? fHVin[pos] : 0;}
345932e4 56
7fffa85b 57 void SetFDRFlag(Bool_t flag) {fFDR = flag;}
58 Bool_t GetFDRFlag() const {return fFDR;}
59
345932e4 60private:
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
7fffa85b 67 Int_t fEndTime; // end time
ff326f84 68 Int_t fStartTimeDCSQuery; // start time DCSQuery
69 Int_t fEndTimeDCSQuery; // end time DCSQuery
345932e4 70
8259e6f8 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
345932e4 76
8259e6f8 77 Bool_t fIsProcessed; // bool to know processing status
7fffa85b 78 Bool_t fFDR; // bool to know whether we are in a FDR run
345932e4 79
ff326f84 80 ClassDef(AliTOFDataDCS, 5);
345932e4 81};
82
83#endif