]> git.uio.no Git - u/mrichter/AliRoot.git/blob - ALIFAST/AliFMaker.h
Getting properly the run number and adding a protection in case of run number inconsi...
[u/mrichter/AliRoot.git] / ALIFAST / AliFMaker.h
1 #ifndef AliFMaker_H
2 #define AliFMaker_H
3
4 //////////////////////////////////////////////////////////////////////////
5 //                                                                      //
6 // AliFast virtual base class for Makers                                //
7 //                                                                      //
8 //////////////////////////////////////////////////////////////////////////
9
10 #ifndef ROOT_TNamed
11 #include <TNamed.h>
12 #endif
13 #ifndef ROOT_TClonesArray
14 #include <TClonesArray.h>
15 #endif
16
17 class TList;
18 class TBrowser;
19 class TChain;
20
21 class AliFMaker : public TNamed {
22
23 protected:
24
25    Bool_t         fIsClonable;  //!True if Maker objects are clonable
26    Int_t          fSave;        // = 1 if m-Maker to be saved in the Tree
27    TObject       *fFruits;      //Pointer to maker fruits (result)
28    TObject       *fClones;      //Pointer to clones of fruits
29    TString        fBranchName;  //Name of branch (if any)
30    TList         *fHistograms;  //Pointer to list supporting Maker histograms
31
32 public:
33                   AliFMaker();
34                   AliFMaker(const char *name, const char *title);
35    virtual       ~AliFMaker();
36    virtual void   Browse(TBrowser *b);
37    virtual void   Clear(Option_t *option="");
38    virtual void   Draw(Option_t *option="");
39    virtual void   Finish();
40    TList         *Histograms() {return fHistograms;}
41    virtual void   Init();
42    Bool_t         IsFolder() const {return kTRUE;}
43    TObject       *Fruit() {return fFruits;}
44    TClonesArray  *Fruits() {return (TClonesArray*)fFruits;}
45    TObject       *Clones() {return fClones;}
46    virtual void   FillClone();
47    virtual void   Make() = 0;
48    virtual void   PrintInfo();
49    virtual void   MakeBranch();
50    virtual void   Save(Int_t save=1) {fSave = save;}
51    virtual void   SetChainAddress(TChain *chain);
52
53    ClassDef(AliFMaker, 1)   //AliFast virtual base class for Makers
54 };
55
56 #endif
57
58
59
60
61
62
63
64
65
66
67
68
69