]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnValue.h
New values and cuts
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnValue.h
1 #ifndef ALIRSNVALUE_H
2 #define ALIRSNVALUE_H
3
4 /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. *
5  * See cxx source for full Copyright notice                               */
6  
7 ////////////////////////////////////////////////////////////////////////////////
8 //
9 //  Collection of all values which can be computed within the package
10 //
11 ////////////////////////////////////////////////////////////////////////////////
12
13 #include "TArrayD.h"
14
15 #include "AliRsnTarget.h"
16
17 class AliRsnValue : public AliRsnTarget {
18 public:
19
20    AliRsnValue();
21    AliRsnValue(const char *name, Int_t nbins = 0, Double_t min = 0.0, Double_t max = 0.0);
22    AliRsnValue(const char *name, Double_t min, Double_t max, Double_t step);
23    AliRsnValue(const char *name, Int_t nbins, Double_t *array);
24    AliRsnValue(const AliRsnValue& copy);
25    AliRsnValue& operator=(const AliRsnValue& copy);
26    virtual ~AliRsnValue() { }
27
28    TArrayD         GetArray() const         {return fBinArray;}
29    const Double_t* GetArrayValues() const   {return fBinArray.GetArray();}
30    Double_t        GetComputedValue() const {return fComputedValue;}
31
32    void            SetBins(Int_t n, Double_t min, Double_t max);
33    void            SetBins(Int_t n, Double_t *array);
34    void            SetBins(Double_t min, Double_t max, Double_t step);
35
36    virtual Bool_t  Eval(TObject *object, Bool_t useMC = kFALSE);
37    virtual void    Print(Option_t *option = "") const;
38
39 protected:
40
41    Double_t fComputedValue;  // computed value
42    TArrayD  fBinArray;       // array of bins (when used for a histogram axis)
43
44    ClassDef(AliRsnValue, 3)      // AliRsnValue base class
45 };
46
47 #endif