]> git.uio.no Git - u/mrichter/AliRoot.git/blob - PWG2/RESONANCES/AliRsnVATProcessInfo.h
Added old multiplicity axis
[u/mrichter/AliRoot.git] / PWG2 / RESONANCES / AliRsnVATProcessInfo.h
1 //
2 // *** Class AliRsnVATProcessInfo ***
3 //
4 // Virtual class which makes computations at the event level,
5 // in order to return a list of histograms useful to have a look
6 // of the characteristics of used events.
7 // If can be inherited and customized for the needs of the analysis.
8 //
9 // authors: A. Pulvirenti (email: alberto.pulvirenti@ct.infn.it)
10 //          M. Vala (email: martin.vala@cern.ch)
11 //
12
13 #ifndef ALIRSNVATPROCESSINFO_H
14 #define ALIRSNVATPROCESSINFO_H
15
16 #include <TNamed.h>
17 #include <TClonesArray.h>
18
19 class TH1I;
20 class AliRsnFunction;
21 class AliRsnEvent;
22
23 class AliRsnVATProcessInfo : public TNamed {
24 public:
25    AliRsnVATProcessInfo(const char *name = "RSNInfo");
26    AliRsnVATProcessInfo(const AliRsnVATProcessInfo& copy);
27    AliRsnVATProcessInfo& operator= (const AliRsnVATProcessInfo& copy);
28    ~AliRsnVATProcessInfo();
29
30    void          GenerateInfoList(TList* list);
31    virtual void  FillInfo(AliRsnEvent *event);
32    virtual void  PrintInfo(const Long64_t &num);
33
34    const char*   GetEventHistogramName() { return Form("hEventsUsed_%s", GetName()); };
35    Long64_t      GetNumerOfEventsProcessed();
36    void          SetEventUsed(Int_t flag) { fEventUsed = flag; }
37    Int_t         IsEventUsed() const { return fEventUsed; };
38    void          AddEventFunction(AliRsnFunction *fcn);
39
40    void          SetPrintInfoNumber(const Long64_t &num = 1) { fPrintInfoNumber = num; }
41
42 private:
43
44    TH1I         *fHistUsedEvents;      // hist of used events
45    Int_t         fEventUsed;           // number of used events
46    TClonesArray  fEventFunctions;      // collection of functions computed on event
47
48    Long64_t      fPrintInfoNumber;     // print info number
49
50    ClassDef(AliRsnVATProcessInfo, 1)
51 };
52
53 #endif