add new mergeable classes for chamber status and trigger statistics
[u/mrichter/AliRoot.git] / PWGPP / TRD / info / AliTRDtrendingManager.h
CommitLineData
3240bb4a 1#ifndef ALITRDTRENDINGMANAGER_H
2#define ALITRDTRENDINGMANAGER_H
3
4/* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5 * See cxx source for full Copyright notice */
61f6b45e 6////////////////////////////////////////////////////////////////////////////
7// //
8// Trend Value Manager //
9// //
10// Authors: //
11// Alexandru Bercuci <A.Bercuci@gsi.de> //
12// //
13////////////////////////////////////////////////////////////////////////////
3240bb4a 14
15#ifndef ROOT_TObject
16#include "TObject.h"
17#endif
18
19#ifndef ALITRDTRENDVALUE_H
20#include "AliTRDtrendValue.h"
21#endif
22
dffc3357 23class TH1;
3240bb4a 24class TObjArray;
25class AliTRDtrendingManager : public TObject
26{
27public:
668a0654 28 enum AliTRDtrendingManagerSteer{
29 kRelative = BIT(14) // trending plots normalized to mean/sigma
30 };
3240bb4a 31 virtual ~AliTRDtrendingManager();
847569f2 32 void AddValue(const Char_t *name
33 ,Double_t mean,Double_t sigm=1
34 ,const Char_t *title=NULL
35 ,const Char_t *responsible=NULL
61f6b45e 36 ,const Char_t *notifiables=NULL
847569f2 37 ,Char_t **messages = NULL
3240bb4a 38 );
847569f2 39 AliTRDtrendValue* GetValue(const Char_t *name);
3240bb4a 40 static AliTRDtrendingManager* Instance();
668a0654 41 Bool_t IsRelativeMeanSigma() const { return TestBit(kRelative);}
847569f2 42 void Load(const char *fn = "$ALICE_ROOT/PWGPP/TRD/data/TRD.Trend.root");
dffc3357 43 TH1* MakeTrends(const char *fileList, TObjArray *dump=NULL);
847569f2 44 Bool_t ModifyValue(const Char_t *name
45 ,const Char_t *title
46 ,Double_t mean,Double_t sigm
3240bb4a 47 ,Char_t **messages=NULL
61f6b45e 48 ,const Char_t *responsible=NULL
49 ,const Char_t *notifiables=NULL
3240bb4a 50 );
51 void Print(Option_t *o="") const;
847569f2 52// void ResetRunRange(Int_t runStart, Int_t runStop) {fRunRange[0]=runStart; fRunRange[1]=runStop;}
668a0654 53 void SetRelativeMeanSigma(Bool_t set=kTRUE) { SetBit(kRelative, set);}
3240bb4a 54 void Terminate();
55
56protected:
57 AliTRDtrendingManager();
58 AliTRDtrendingManager(const AliTRDtrendingManager& ref);
59 AliTRDtrendingManager& operator=(const AliTRDtrendingManager& ref);
60
61private:
62 static Bool_t fgTerminated; // instance terminate flag
63 static AliTRDtrendingManager* fgInstance; // instance
64 TObjArray *fEntries; // list of trending values
65 AliTRDtrendValue *fValue; // current loaded trend value
847569f2 66// Int_t fRunRange[2];// valability range
3240bb4a 67
68 ClassDef(AliTRDtrendingManager, 0) // TRD trending Manager
69};
70
71#endif