]> git.uio.no Git - u/mrichter/AliRoot.git/blame - STEER/AliDCSSensorArray.h
Consistency changes, bug fix, and new conditions on the kITSrefit and kTPCrefit bits...
[u/mrichter/AliRoot.git] / STEER / AliDCSSensorArray.h
CommitLineData
7264822f 1#ifndef AliDCSSensorArray_H
2#define AliDCSSensorArray_H
3/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4 * See cxx source for full Copyright notice */
5
6
7///////////////////////////////////////////////////////////////////////////////
8// //
9// Calibration class for DCS sensors //
10// //
11///////////////////////////////////////////////////////////////////////////////
12
13#include "TNamed.h"
14#include "TMap.h"
15#include "TObjString.h"
16#include "AliCDBManager.h"
17#include "AliCDBEntry.h"
18#include "AliDCSValue.h"
19#include "AliDCSSensor.h"
20
21class TGraph;
22class TTimeStamp;
23
24
25class AliDCSSensorArray : public TNamed {
26 public:
27 AliDCSSensorArray();
24938b4c 28 AliDCSSensorArray(TClonesArray *arr);
29 AliDCSSensorArray(Int_t run, const char* dbEntry);
30 AliDCSSensorArray(UInt_t startTime, UInt_t endTime, TTree* confTree);
82dfb6c8 31 AliDCSSensorArray(const AliDCSSensorArray &c);
7264822f 32 virtual ~AliDCSSensorArray();
33 AliDCSSensorArray &operator=(const AliDCSSensorArray &c);
34 virtual void Copy (TObject &c) const;
35 void SetStartTime (const TTimeStamp& start) { fStartTime = start; }
36 void SetEndTime (const TTimeStamp& end) { fEndTime = end; }
82dfb6c8 37 TTimeStamp GetStartTime () const { return fStartTime; }
38 TTimeStamp GetEndTime () const { return fEndTime; }
e5250086 39 void SetMinGraph(const Int_t minGraph) { fMinGraph=minGraph;}
40 Int_t GetMinGraph() const { return fMinGraph; }
41 void SetMinPoints(const Int_t minPoints) { fMinPoints=minPoints;}
42 Int_t GetMinPoints() const { return fMinPoints; }
82dfb6c8 43 void SetIter(const Int_t iter ) { fIter=iter; }
44 Int_t GetIter() const { return fIter; }
e5250086 45 void SetMaxDelta(const Double_t maxDelta) { fMaxDelta= maxDelta;}
82dfb6c8 46 Double_t GetMaxDelta() const { return fMaxDelta; }
e5250086 47 void SetFitReq(const Int_t fitReq) { fFitReq=fitReq; }
48 Int_t GetFitReq() const {return fFitReq;}
49 void SetValCut(const Int_t valCut) { fValCut=valCut;}
82dfb6c8 50 Int_t GetValCut() const {return fValCut;}
e5250086 51 void SetDiffCut(const Int_t diffCut) { fDiffCut=diffCut; }
52 Int_t GetDiffCut() const {return fDiffCut;}
53
24938b4c 54 void SetGraph (TMap *map);
55 void MakeSplineFit(TMap *map, Bool_t keepMap=kFALSE);
56 TMap* ExtractDCS (TMap *dcsMap);
7264822f 57 TGraph* MakeGraph (TObjArray *valueSet);
24938b4c 58 void ClearGraph();
82dfb6c8 59 void ClearFit();
7264822f 60 Double_t GetValue (UInt_t timeSec, Int_t sensor);
61 AliDCSSensor* GetSensor (Int_t IdDCS);
62 AliDCSSensor* GetSensor (Double_t x, Double_t y, Double_t z);
24938b4c 63 AliDCSSensor* GetSensor (const TString& stringID);
8cb8848e 64 AliDCSSensor* GetSensorNum (Int_t ind);
82dfb6c8 65 void RemoveSensorNum(Int_t ind);
66 void RemoveSensor(Int_t IdDCS);
8cb8848e 67 Int_t NumSensors() const { return fSensors->GetEntries(); }
82dfb6c8 68
8cb8848e 69 Int_t GetFirstIdDCS() const;
82dfb6c8 70 Int_t GetLastIdDCS() const;
7264822f 71
72 protected:
e5250086 73 Int_t fMinGraph; // minimum #points of graph to be fitted
74 Int_t fMinPoints; // minimum number of points per knot in fit
75 Int_t fIter; // number of iterations for spline fit
76 Double_t fMaxDelta; // precision parameter for spline fit
77 Int_t fFitReq; // fit requirement, 2 = continuous 2nd derivative
78 Int_t fValCut; // cut on absolute value read from DCS map
79 Int_t fDiffCut; // cut on difference in value read from DCS map
80 TTimeStamp fStartTime; // start time for measurements in this entry
81 TTimeStamp fEndTime; // end time for measurements in this entry
82 TClonesArray *fSensors; // Array of sensors
7264822f 83
e5250086 84 ClassDef(AliDCSSensorArray,3) // TPC calibration class for parameters which are saved per pad
7264822f 85
86};
87
88#endif