]>
Commit | Line | Data |
---|---|---|
809a4336 | 1 | /* Copyright(c) 1998-1999, ALICE Experiment at CERN, All rights reserved. * |
c2690925 | 2 | * See cxx source for full Copyright notice |
3 | */ | |
809a4336 | 4 | |
50685501 | 5 | // |
6 | // Class for AliHFEcollection | |
7 | // Serves as a data container - currently based on internal TList | |
8 | // | |
9 | // Authors: | |
10 | // Markus Fasel <M.Fasel@gsi.de> | |
11 | // Matus Kalisky <matus.kalisky@cern.ch> (contact) | |
12 | // | |
13 | ||
14 | ||
15 | // | |
16 | // Provides an option for storing and creating histograms outside the | |
17 | // analysis class | |
18 | // the performance will be improved once the TMap is used insted of TTree | |
19 | // | |
809a4336 | 20 | |
21 | /* | |
22 | * vesion: 1.0.1 | |
23 | */ | |
24 | ||
25 | ||
c2690925 | 26 | #ifndef ALIHFECOLLECTION_H |
27 | #define ALIHFECOLLECTION_H | |
28 | ||
809a4336 | 29 | #ifndef ROOT_TNamed |
30 | #include "TNamed.h" | |
31 | #endif | |
32 | ||
70da6c5a | 33 | #ifndef ROOT_THashList |
34 | #include "THashList.h" | |
35 | #endif | |
36 | ||
809a4336 | 37 | class TCollection; |
38 | class TBrowser; | |
39 | ||
40 | class AliHFEcollection : public TNamed{ | |
41 | ||
42 | public: | |
43 | AliHFEcollection(); | |
faee3b18 | 44 | AliHFEcollection(const char* name, const char* title); |
809a4336 | 45 | AliHFEcollection(const AliHFEcollection &c); |
46 | AliHFEcollection &operator=(const AliHFEcollection &c); | |
47 | virtual ~AliHFEcollection(); | |
48 | ||
49 | ||
75d81601 | 50 | virtual void Browse(TBrowser *b); |
bf892a6a | 51 | virtual Bool_t IsFolder() const { return kTRUE; } |
809a4336 | 52 | |
53 | // Set & Create functions | |
faee3b18 | 54 | Bool_t CreateTH1F(const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1); |
c2690925 | 55 | Bool_t CreateTH1Farray(const char* name, const char* title, Int_t nBin, const Double_t* xbins); |
809a4336 | 56 | |
faee3b18 | 57 | Bool_t CreateTH2F(const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t logAxis = -1); |
a8ef1999 | 58 | Bool_t CreateTH2Farray(const char* name, const char* title, Int_t nBin, const Double_t* xbins, Int_t nBinY, Float_t nMinY, Float_t nMaxY); |
8c1c76e9 | 59 | Bool_t CreateTH3F(const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t nBinZ, Float_t minZ, Float_t maxZ, Int_t logAxis = -1); |
809a4336 | 60 | |
faee3b18 | 61 | Bool_t CreateTH1Fvector1(Int_t X, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1); |
62 | Bool_t CreateTH1Fvector2(Int_t X, Int_t Y, const char* name, const char* title, Int_t nBin, Float_t nMin, Float_t nMax, Int_t logAxis = -1); | |
63 | Bool_t CreateTH2Fvector1(Int_t X, const char* name, const char* title, Int_t nBinX, Float_t nMinX, Float_t nMaxX, Int_t nBinY, Float_t nMinY, Float_t nMaxY, Int_t logAxis = -1); | |
9bcfd1ab | 64 | Bool_t CreateProfile(const char* name, const char* title, Int_t nbins, Double_t xmin, Double_t xmax); |
8c1c76e9 | 65 | Bool_t CreateTHnSparse(const char* name, const char* title, Int_t dim, const Int_t* nbins, const Double_t* xmin, const Double_t* xmax); |
a8ef1999 | 66 | Bool_t CreateTHnSparseNoLimits(const char* name, const char* title, Int_t dim, const Int_t* nbins); |
809a4336 | 67 | |
9bcfd1ab | 68 | Bool_t BinLogAxis(const char* name, Int_t dim); |
70da6c5a | 69 | Bool_t Sumw2(const char*name); |
9bcfd1ab | 70 | |
809a4336 | 71 | |
8c1c76e9 | 72 | Long64_t Merge(const TCollection *list); |
e156c3bb | 73 | virtual void Print(Option_t *) const; |
809a4336 | 74 | |
75 | // Get functions | |
3a72645a | 76 | TList* GetList() const { return fList; } |
809a4336 | 77 | TObject* Get(const char* name); |
809a4336 | 78 | |
9bcfd1ab | 79 | // Fill functions |
80 | Bool_t Fill(const char* name, Double_t v); | |
faee3b18 | 81 | Bool_t Fill(const char* name, Int_t v); |
9bcfd1ab | 82 | Bool_t Fill(const char* name, Int_t X, Double_t v); |
83 | Bool_t Fill(const char* name, Int_t X, Int_t Y, Double_t v); | |
84 | Bool_t Fill(const char* name, Double_t v1, Double_t v2); | |
85 | Bool_t Fill(const char* name, Int_t X, Double_t v1, Double_t v2); | |
8c1c76e9 | 86 | Bool_t Fill(const char* name, Double_t v1, Double_t v2, Double_t v3); |
faee3b18 | 87 | Bool_t Fill(const char* name, Double_t* entry, Double_t weight = 1); |
809a4336 | 88 | private: |
75d81601 | 89 | Bool_t CheckObject(const char* name); |
809a4336 | 90 | void Copy(TObject &ref) const; |
91 | ||
92 | private: | |
70da6c5a | 93 | THashList* fList; // Object container |
809a4336 | 94 | |
95 | ClassDef(AliHFEcollection, 1) | |
96 | ||
97 | }; | |
98 | ||
99 | #endif |