Fixes in order to treat correctly event and sub-event header extensions.
[u/mrichter/AliRoot.git] / MONITOR / AliMonitorTrend.h
1 #ifndef ALIMONITORTREND_H
2 #define ALIMONITORTREND_H
3 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
4  * See cxx source for full Copyright notice                               */
5
6 /* $Id$ */
7
8 #include "AliMonitorPlot.h"
9 #include "TArrayD.h"
10
11
12 class AliMonitorTrend : public AliMonitorPlot {
13 public:
14   AliMonitorTrend();
15   AliMonitorTrend(const AliMonitorTrend& trend);
16   AliMonitorTrend& operator =(const AliMonitorTrend& trend);
17   AliMonitorTrend(const char* name, const char* title,
18                   const char* label, Double_t min = 0, Double_t max = 0);
19   virtual ~AliMonitorTrend();
20
21   virtual void    SetReference(TH1* ref);
22   virtual void    SetReference(AliMonitorPlot* ref);
23
24   void            Fill(Double_t x);
25
26   virtual void    Update();
27   virtual void    Add(AliMonitorPlot* plot);
28   virtual void    Reset();
29   virtual void    ResetList();
30
31   Double_t        GetMean() const;
32   Double_t        GetSigma() const;
33 protected:
34   virtual Bool_t  ComparePlot();
35   virtual Bool_t  GetEvent(Int_t number = 1);
36   virtual Bool_t  GetSum(Int_t number);
37   virtual Bool_t  GetRun();
38   virtual void    DrawPlot();
39
40   TH1*            CreateHisto(Int_t nBins);
41
42   TString         fLabel;        // label of the y axis
43   Double_t        fMin;          // minimal y axis value
44   Double_t        fMax;          // maximal y axis value
45   TArrayD         fData;         // monitored values
46   static Int_t    fgIncSize;  //! amount by which the TArrayD is increased
47
48   TH1*            fHistoDraw;    //! the histogram for the trend, used for comparison to a reference
49   Double_t        fRefMean;      //! mean reference value
50   Double_t        fRefSigma;     //! standard deviation of the reference value
51   TH1*            fHistoCompare; //! the result of the comparison to the reference, only bins with large deviation are set
52
53   ClassDef(AliMonitorTrend, 1)   // histogram for monitoring the quality of the recorded data (time dependent value)
54 };
55  
56
57 #endif
58
59
60
61
62
63
64
65
66