]> git.uio.no Git - u/mrichter/AliRoot.git/blame - PWGPP/TRD/info/AliTRDtrendValue.h
Merge branch 'feature-movesplit'
[u/mrichter/AliRoot.git] / PWGPP / TRD / info / AliTRDtrendValue.h
CommitLineData
3240bb4a 1#ifndef ALITRDTRENDVALUE_H
2#define ALITRDTRENDVALUE_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 Incapsulation //
9// //
10// Authors: //
11// Alexandru Bercuci <A.Bercuci@gsi.de> //
12// //
13////////////////////////////////////////////////////////////////////////////
3240bb4a 14
15#ifndef ROOT_TNamed
16#include "TNamed.h"
17#endif
18
19class AliTRDtrendValue : public TNamed
20{
61f6b45e 21friend class AliTRDtrendingManager; // allow easy access for Manager
22public:
3240bb4a 23 enum ETRDtrendValue{
24 kNlevels = 4
25 ,kNnotifiable = 10
26 };
27 AliTRDtrendValue();
847569f2 28 AliTRDtrendValue(const Char_t *n, const Char_t *t);
29 AliTRDtrendValue(const AliTRDtrendValue &ref);
95d47440 30 virtual ~AliTRDtrendValue();
3240bb4a 31
847569f2 32 Double_t GetVal() const { return fValue;}
33 Double_t GetErr() const { return fSigma;}
34 void Print(Option_t *o="") const; // *MENU*
35 void Set(Double_t v, Double_t ve) { fValue=v; fSigma = ve;}
3240bb4a 36
37protected: // only manager can fill these info !!
847569f2 38 AliTRDtrendValue& operator/=(const AliTRDtrendValue &n);
39 const char* GetAlarmMessage(Int_t ns) const;
847569f2 40 const char* GetResponsible() const;
41 const char* GetNotifiable(Int_t in) const;
42 void SetAlarm(Int_t level, Char_t *m);
43 void SetResponsible(const Char_t *name, const Char_t *mail, Option_t *opt="");
3240bb4a 44 void SetNotifiable(const Char_t *name, const Char_t *mail);
45
46private:
61f6b45e 47 const AliTRDtrendValue& operator=(const AliTRDtrendValue &ref);
48
847569f2 49 Double_t fValue; // value; mean for reference, current for running
50 Double_t fSigma; // error; sigma for reference, current for running
51// Char_t *fAlarmMessage[kNlevels]; // list of alarm messages
52 TNamed *fResponsible; // responsible person
53 TNamed *fNotifiable[kNnotifiable]; // also notify these persons
3240bb4a 54
847569f2 55 ClassDef(AliTRDtrendValue, 1) // TRD trending value representation
3240bb4a 56};
57
58#endif
59