1 #ifndef ALI_DCS_ARRAY_H
2 #define ALI_DCS_ARRAY_H
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
9 ////////////////////////////////////////////////////////////////////////////////
11 // This class represents the value(s) of a the LHC DPs at a given timestamp //
13 ////////////////////////////////////////////////////////////////////////////////
16 #include <TObjArray.h>
17 //#include <TTimeStamp.h>
20 class AliDCSArray : public TObject {
35 virtual ~AliDCSArray();
37 AliDCSArray(Int_t nentries, Bool_t* value, Double_t timeStamp);
38 AliDCSArray(Int_t nentries, Char_t* value, Double_t timeStamp);
39 AliDCSArray(Int_t nentries, Int_t* value, Double_t timeStamp);
40 AliDCSArray(Int_t nentries, UInt_t* value, Double_t timeStamp);
41 AliDCSArray(Int_t nentries, Float_t* value, Double_t timeStamp);
42 AliDCSArray(Int_t nentries, Double_t* value, Double_t timeStamp);
43 AliDCSArray(Int_t nentries, TObjArray* value, Double_t timeStamp);
45 Int_t GetNEntries() const { return fnentries;}
46 Bool_t* GetBool() const { return fBool; }
47 Char_t* GetChar() const { return fChar; }
48 Int_t* GetInt() const { return fInt; }
49 UInt_t* GetUInt() const { return fUInt; }
50 Float_t* GetFloat() const { return fFloat; }
51 Double_t* GetDouble() const { return fDouble; }
52 TObjArray* GetStringArray() const { return fStringArray; }
54 Bool_t GetBool(Int_t index) const { return fBool[index]; }
55 Char_t GetChar(Int_t index) const { return fChar[index]; }
56 Int_t GetInt(Int_t index) const { return fInt[index]; }
57 UInt_t GetUInt(Int_t index) const { return fUInt[index]; }
58 Float_t GetFloat(Int_t index) const { return fFloat[index]; }
59 Double_t GetDouble(Int_t index) const { return fDouble[index]; }
60 TObjString* GetStringArray(Int_t index) const { return (TObjString*)fStringArray->At(index); }
62 Type GetType() const { return fType; }
64 Double_t GetTimeStamp() const { return fTimeStamp; }
65 void SetTimeStamp(Double_t timeStamp) { fTimeStamp = timeStamp; }
71 Type fType; // type of the value stored
73 Int_t fnentries; // n. of entries at the same timestamp
74 Bool_t* fBool; //[fnentries] bool value
75 Char_t* fChar; //[fnentries] char value
76 Int_t* fInt; //[fnentries] int value
77 UInt_t* fUInt; //[fnentries] uint value
78 Float_t* fFloat; //[fnentries] float value
79 // TString* fString; //[fnentries] string value
80 TObjArray* fStringArray; //TObjArray to store TObjStrinf for string value
82 Double_t fTimeStamp; // timestamp of this value
84 Double_t* fDouble; //[fnentries] double value
87 AliDCSArray(const AliDCSArray& c);
88 AliDCSArray& operator=(const AliDCSArray& c);
90 ClassDef(AliDCSArray, 2);